package com.jyw.business.ast.config;

import com.jyw.common.config.SwaggerConfig;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;

/**
 * @author 沈峻
 * @ClassName AstSwaggerConfig
 * @Description 资产api文档配置
 * @Date 2023年9月19日
 **/
@Configuration
public class AstSwaggerConfig extends SwaggerConfig {

    /**
     * 创建API
     */
    @Bean
    public Docket createAstRestApi()
    {
        return new Docket(DocumentationType.OAS_30)
                // 是否启用Swagger
                .enable(enabled)
                // 用来创建该API的基本信息，展示在文档的页面中（自定义展示的信息）
                .apiInfo(apiInfo())
                // 设置哪些接口暴露给Swagger展示
                .select()
                // 扫描指定包
                .apis(RequestHandlerSelectors.basePackage("com.jyw.business.ast.controller"))
                // 扫描所有 .apis(RequestHandlerSelectors.any())
                .paths(PathSelectors.any())
                .build()
                .groupName("PC-资产")
                /* 设置安全模式，swagger可以设置访问token */
                .securitySchemes(securitySchemes())
                .securityContexts(securityContexts())
                .pathMapping(pathMapping);
    }



}
